// 炼轧作业计划 API
import request from "@/utils/request";

// 炼轧作业计划 VO 定义（JavaScript 对象形式）
export const PlanLzVO = {
  // 主键ID
  id: 0,
  // 作业计划号
  planNo: "",
  // 计划类型
  planType: "",
  // 主作业计划号
  planNoMain: "",
  // 业务日期
  ywDate: null,
  // 工序编码
  processNo: "",
  // 工区名称
  processName: "",
  // 班次
  workShift: "",
  // 班别
  wortkType: "",
  // 计划备注
  planMemo: "",
  // 计划状态
  planStatus: "",
  // 物料编码
  materialCode: "",
  // 物料名称
  materialName: "",
  // 原料质检方案编码
  schemeCode: "",
  // 原料质检方案名称
  schemeName: "",
  // 产品大类
  prodClassName: "",
  // 品名
  prodName: "",
  // 标准编码
  standCode: "",
  // 标准号
  standNo: "",
  // 钢种编码
  steelGradeCode: "",
  // 钢种
  steelGradeName: "",
  // 规格
  prodSpec: "",
  // 计划数量
  planCount: 0,
  // 数量单位
  countUnit: "",
  // 特殊说明
  specialMemo: "",
  // 辅助数量
  transCount: 0,
  // 辅助单位
  tranUnit: "",
  // 计划交货期
  planDeliverDate: null,
  // 已生产数量
  prodCountIn: 0,
  // 删除人
  deleter: "",
  // 删除时间
  deleteTime: null,
  // 业务状态
  busStatus: "",
  // 业务备注
  busMemo: "",
  // 预留字段
  reserveVarchar1: "",
  reserveVarchar2: "",
  reserveVarchar3: "",
  reserveVarchar4: "",
  reserveDecimal1: 0,
  // 炼轧作业计划明细列表
  planLzDetails: [],
};

// 炼轧作业计划 API
export const PlanLzApi = {
  // 查询炼轧作业计划分页
  getPlanLzPage: function (params) {
    return request({
      method: "get",
      url: "/pp/plan-lz/page",
      params: params,
    });
  },

  // 查询炼轧作业计划详情
  getPlanLz: function (id) {
    return request({
      method: "get",
      url: "/pp/plan-lz/get?id=" + id,
    });
  },

  // 新增炼轧作业计划
  createPlanLz: function (data) {
    return request({
      method: "post",
      url: "/pp/plan-lz/create",
      data: data,
    });
  },

  // 修改炼轧作业计划
  updatePlanLz: function (data) {
    return request({
      method: "put",
      url: "/pp/plan-lz/update",
      data: data,
    });
  },

  // 删除炼轧作业计划
  deletePlanLz: function (id) {
    return request({
      method: "delete",
      url: "/pp/plan-lz/delete?id=" + id,
    });
  },

  // 导出炼轧作业计划 Excel
  exportPlanLz: function (params) {
    return request({
      method: "get",
      url: "/pp/plan-lz/export-excel",
      params: params,
    });
  },

  // ==================== 子表（炼轧作业计划明细） ====================

  // 获得炼轧作业计划明细分页
  getPlanLzDetailPage: function (params) {
    return request({
      method: "get",
      url: "/pp/plan-lz/plan-lz-detail/query",
      params: params,
    });
  },

  // 新增炼轧作业计划明细
  createPlanLzDetail: function (data) {
    return request({
      method: "post",
      url: "/pp/plan-lz/plan-lz-detail/create",
      data: data,
    });
  },

  // 修改炼轧作业计划明细
  updatePlanLzDetail: function (data) {
    return request({
      method: "put",
      url: "/pp/plan-lz/plan-lz-detail/update",
      data: data,
    });
  },

  // 删除炼轧作业计划明细
  deletePlanLzDetail: function (id) {
    return request({
      method: "delete",
      url: "/pp/plan-lz/plan-lz-detail/delete?id=" + id,
    });
  },

  // 获得炼轧作业计划明细
  getPlanLzDetail: function (id) {
    return request({
      method: "get",
      url: "/pp/plan-lz/plan-lz-detail/get?id=" + id,
    });
  },
};

export default PlanLzApi;
